package cn.fl.project.transform;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.base.lnkcomp.transform.BasePrjLnkCompRlPsnVOTransform;
import cn.fl.project.vo.PrjLnkCompRlPsnVO;
import fl.spl.facade.lnkcomp.dto.PrjLnkCompRlPsnDTO;

import java.util.ArrayList;
import java.util.List;


/**
 * @Description: 挂靠公司关联人员信息表 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据
 * @Description: VO转换数据变成DTO传递到服务端
 * @Description: VO不能在服务端出现
 */
public class PrjLnkCompRlPsnVOTransform extends BasePrjLnkCompRlPsnVOTransform {


    /**
     * DTO 转  VO
     *
     * @param dto PrjLnkCompRlPsnDTO
     * @return PrjLnkCompRlPsnVO
     */
    public static PrjLnkCompRlPsnVO toVO(PrjLnkCompRlPsnDTO dto) {
        PrjLnkCompRlPsnVO vo = baseToVO(dto);
        if (dto != null) {
            vo.setCertTypCdNm(dto.getCertTypCdNm());
            vo.setRlTypCdNm(dto.getRlTypCdNm());
            vo.setHsjPsnId(dto.getHsjPsnId());
        }
        return vo;
    }

    /**
     * VO 转 DTO
     *
     * @param vo PrjLnkCompRlPsnVO
     * @return PrjLnkCompRlPsnDTO
     */
    public static PrjLnkCompRlPsnDTO toDTO(PrjLnkCompRlPsnVO vo) {
        PrjLnkCompRlPsnDTO dto = baseToDTO(vo);
        if (vo != null) {
            dto.setCertTypCdNm(vo.getCertTypCdNm());
            dto.setRlTypCdNm(vo.getRlTypCdNm());
            dto.setHsjPsnId(vo.getHsjPsnId());
        }
        return dto;
    }

    /**
     * DTO集合 转 VO集合
     *
     * @param list List<PrjLnkCompRlPsnDTO>
     * @return List<PrjLnkCompRlPsnVO>
     */
    public static List<PrjLnkCompRlPsnVO> toVOList(List<PrjLnkCompRlPsnDTO> list) {
        List<PrjLnkCompRlPsnVO> voList = new ArrayList<PrjLnkCompRlPsnVO>();
        if (CollectionUtils.isNotEmpty(list)) {
            for (PrjLnkCompRlPsnDTO dto : list) {
                voList.add(toVO(dto));
            }
        }
        return voList;
    }

    /**
     * VO集合 转 DTO集合
     *
     * @param list List<PrjLnkCompRlPsnVO>
     * @return List<PrjLnkCompRlPsnDTO>
     */
    public static List<PrjLnkCompRlPsnDTO> toDTOList(List<PrjLnkCompRlPsnVO> list) {
        List<PrjLnkCompRlPsnDTO> dtoList = new ArrayList<PrjLnkCompRlPsnDTO>();
        if (CollectionUtils.isNotEmpty(list)) {
            for (PrjLnkCompRlPsnVO vo : list) {
                dtoList.add(toDTO(vo));
            }
        }
        return dtoList;
    }
}
